-- @Author: baidwwy
-- @Date:   2018-05-04 06:28:19
-- @Last Modified by:   baidwwy
-- @Last Modified time: 2018-05-04 07:06:35
local __ggeMesh = require("gge.mesh")

local GGELUA = class()


function GGELUA:初始化(rows,cols)
    self._obj = __ggeMesh(cols,rows)

end

-- function GGELUA:复制()
--     return GGELUA(self._obj:Clone())
-- end

function GGELUA:显示(x,y)
    self._obj:Render(x or 0,y or 0);
end
function GGELUA:重置(color,z)
    self._obj:Clear(color or 0xFFFFFFFF,z or 0.5)
end
function GGELUA:置纹理(texture)
    self._obj:SetTexture(texture:取指针())
    return self
end
function GGELUA:取纹理()
    return require("gge纹理类")(self._obj:GetTexture())
end
function GGELUA:置区域(x,y,width,height)
    self._obj:SetTextureRect(x,y,width,height)
    return self
end
function GGELUA:取区域()
    return self._obj:GetTextureRect()
end
function GGELUA:置混合(blend)
     self._obj:SetBlendMode(blend)
    return self
end
function GGELUA:取混合()
     return self._obj:GetBlendMode()
end
function GGELUA:置Z轴(row,col,z)
    self._obj:SetZ(col,row,z or -1)
    return self
end
function GGELUA:取Z轴(row,col)
    return self._obj:GetZ(col,row)
end
function GGELUA:置颜色(row,col,color)
    self._obj:SetColor(col,row,color)
    return self
end
function GGELUA:取颜色(row,col)
    return self._obj:GetColor(col,row)
end
-- enum MESH_REF_POINT
-- {
--     MESH_NODE,      ///< 原始坐标
--     MESH_TOPLEFT,   ///< 网格左上角
--     MESH_CENTER,    ///< 网格中心
--     MESH_FORCE32BIT = 0x7FFFFFFF,
-- };
function GGELUA:置偏移(row,col,dx,dy,ref)
    self._obj:SetDisplacement(col,row,dx,dy,ref or 0)
    return self
end
function GGELUA:取偏移(row,col,ref)
    return self._obj:GetDisplacement(col,row,ref or 0)
end
function GGELUA:取行数()
    return self._obj:GetRows()
end

function GGELUA:取列数()
    return self._obj:GetCols()
end
return GGELUA